/* tslint:disable */
/* eslint-disable */

import React, { CSSProperties, SVGAttributes, FunctionComponent } from 'react';
import { getIconColor } from './helper';

interface Props extends Omit<SVGAttributes<SVGElement>, 'color'> {
  size?: number;
  color?: string | string[];
}

const DEFAULT_STYLE: CSSProperties = {
  display: 'block',
};

const IconLocation: FunctionComponent<Props> = ({ size, color, style: _style, ...rest }) => {
  const style = _style ? { ...DEFAULT_STYLE, ..._style } : DEFAULT_STYLE;

  return (
    <svg viewBox="0 0 1024 1024" width={size + 'px'} height={size + 'px'} style={style} {...rest}>
      <path
        d="M512 96c176.736 0 320 143.264 320 320 0 49.056-17.664 108.768-52.928 179.552l-10.048 19.584c-15.712 29.792-34.4 61.44-56 94.976l-14.88 22.656c-7.616 11.456-15.584 23.136-23.904 35.04l-17.024 24.032c-2.88 4.064-5.856 8.16-8.832 12.256l-18.336 24.928-19.2 25.472-20.064 26.048-20.96 26.656-21.792 27.2-11.232 13.824a32 32 0 0 1-49.6 0l-11.2-13.824-21.824-27.2-20.96-26.656-20.064-26.048-19.2-25.472a2704.416 2704.416 0 0 1-9.28-12.544l-17.92-24.64-16.992-24.032c-8.32-11.904-16.288-23.584-23.904-35.04l-14.848-22.656a1281.248 1281.248 0 0 1-56.032-94.976l-10.048-19.584C209.664 524.8 192 465.056 192 416 192 239.264 335.264 96 512 96z m0 64a256 256 0 0 0-256 256c0 37.76 14.4 86.24 43.2 145.12l9.088 17.984c4.768 9.152 9.856 18.56 15.264 28.16l11.232 19.52 12.128 20.16 12.992 20.768c2.24 3.52 4.48 7.04 6.816 10.592l14.272 21.696 15.136 22.272 7.904 11.36 16.48 23.2 17.28 23.808 9.024 12.128 18.624 24.704 19.488 25.28c6.656 8.544 13.44 17.184 20.352 25.92l6.688 8.384 17.28-21.728 20.32-26.144 9.856-12.8 18.976-25.248 9.152-12.352 17.632-24.288 16.736-23.648 8-11.584 15.36-22.688c4.96-7.456 9.792-14.816 14.464-22.08l13.536-21.376c4.352-7.04 8.576-13.984 12.64-20.8l11.744-20.128c45.12-79.232 68.48-143.008 70.24-190.56L768 416a256 256 0 0 0-256-256z m0 96a160 160 0 1 1 0 320 160 160 0 0 1 0-320z m0 64a96 96 0 1 0 0 192 96 96 0 0 0 0-192z"
        fill={getIconColor(color, 0, '#333333')}
      />
    </svg>
  );
};

IconLocation.defaultProps = {
  size: 18,
};

export default IconLocation;
